MESCIUS CalendarGrid for Windows Forms 4.0J
フィールドオブジェクトによる書式設定 (CalendarGcDateTimeCellType)

概要

CalendarGcDateTimeCellTypeには、表示にInputManのGcDateコントロールのフィールドオブジェクトのサブセットが提供されます。

入力時の書式を設定する入力フィールドには、次の11種類のフィールドが提供されており、これらのフィールドオブジェクトを使って書式を設定することができます。


表示フィールドでは、次の14種類のフィールドが提供されています。


また、GcDateTimeのフィールドオブジェクトはInputManのGcDateコントロールと共通です。

これらのフィールドオブジェクトをDateFieldCollectionまたは、DateDisplayFieldCollectionコレクションに追加するには、Addメソッドまたは、AddRangeメソッドを使用します。
次のサンプルコードは、CalendarGcDateTimeCellTypeに入力書式を設定する例です。DateFieldCollection.AddRangeメソッドを使用してDateFieldCollectionコレクションにフィールドを追加しています。

Imports InputManCell = GrapeCity.Win.CalendarGrid.InputMan

Dim today As DateTime = DateTime.Today

Dim GcDateTimeCellType As New InputManCell.CalendarGcDateTimeCellType()

' フィールドをクリアします。
GcDateTimeCellType.Fields.Clear()
GcDateTimeCellType.DisplayFields.Clear()

' 入力フィールドのオブジェクトを作成します。
Dim dateYearField1 As New InputManCell.DateYearField(InputManCell.YearDigitType.FourDigitYear)
Dim dateLiteralField1 As New InputManCell.DateLiteralField("/")
Dim dateMonthField1 As New InputManCell.DateMonthField(InputManCell.MonthPattern.Number)
Dim dateLiteralField2 As New InputManCell.DateLiteralField("/")
Dim dateDayField1 As New InputManCell.DateDayField()
Dim dateLiteralField3 As New InputManCell.DateLiteralField(" ")
Dim dateHourField1 As New InputManCell.DateHourField()
Dim dateLiteralField4 As New InputManCell.DateLiteralField(":")
Dim dateMinuteField1 As New InputManCell.DateMinuteField()
Dim dateLiteralField5 As New InputManCell.DateLiteralField(":")
Dim dateSecondField1 As New InputManCell.DateSecondField()

' フィールドをコレクションに追加してセルに入力書式を設定します。
GcDateTimeCellType.Fields.AddRange(New InputManCell.DateField() { _
      dateYearField1, dateLiteralField1, dateMonthField1, _
      dateLiteralField2, dateDayField1, dateLiteralField3, _
      dateHourField1, dateLiteralField4, dateMinuteField1, _
      dateLiteralField5, dateSecondField1})

' 表示フィールドのオブジェクトを作成します。
Dim dateYearDisplayDield1 As New InputManCell.DateYearDisplayField(False)
Dim dateLiteralDisplayField1 As New InputManCell.DateLiteralDisplayField("年")
Dim dateMonthDisplayField1 As New InputManCell.DateMonthDisplayField(False)
Dim dateLiteralDisplayField2 As New InputManCell.DateLiteralDisplayField("月")
Dim dateDayDisplayField1 As New InputManCell.DateDayDisplayField(False)
Dim dateLiteralDisplayField3 As New InputManCell.DateLiteralDisplayField("日 ")
Dim dateHourDisplayField1 As New InputManCell.DateHourDisplayField(False, False)
Dim dateLiteralDisplayField4 As New InputManCell.DateLiteralDisplayField("時")
Dim dateMinuteDisplayField1 As New InputManCell.DateMinuteDisplayField(False)
Dim dateLiteralDisplayField5 As New InputManCell.DateLiteralDisplayField("分")
Dim dateSecondDisplayField1 As New InputManCell.DateSecondDisplayField(False)
Dim dateLiteralDisplayField6 As New InputManCell.DateLiteralDisplayField("秒")

' フィールドをコレクションに追加してセルに表示書式を設定します。
GcDateTimeCellType.DisplayFields.AddRange(New InputManCell.DateDisplayField() { _
      dateYearDisplayDield1, dateLiteralDisplayField1, dateMonthDisplayField1, _
      dateLiteralDisplayField2, dateDayDisplayField1, dateLiteralDisplayField3, _
      dateHourDisplayField1, dateLiteralDisplayField4, dateMinuteDisplayField1, _
      dateLiteralDisplayField5, dateSecondDisplayField1, dateLiteralDisplayField6})

GcCalendarGrid1.Content(today).Rows(1).Cells(0).CellType = GcDateTimeCellType

GcCalendarGrid1.ScrollIntoView(today)
using InputManCell = GrapeCity.Win.CalendarGrid.InputMan;

var today = DateTime.Today;

var gcDateTimeCellType = new InputManCell.CalendarGcDateTimeCellType();

// フィールドをクリアします。gcDateTimeCellType.Fields.Clear();
gcDateTimeCellType.DisplayFields.Clear();

// 入力フィールドのオブジェクトを作成します。
InputManCell.DateYearField dateYearField1 = new InputManCell.DateYearField(InputManCell.YearDigitType.FourDigitYear);
InputManCell.DateLiteralField dateLiteralField1 = new InputManCell.DateLiteralField("/");
InputManCell.DateMonthField dateMonthField1 = new InputManCell.DateMonthField(InputManCell.MonthPattern.Number);
InputManCell.DateLiteralField dateLiteralField2 = new InputManCell.DateLiteralField("/");
InputManCell.DateDayField dateDayField1 = new InputManCell.DateDayField();
InputManCell.DateLiteralField dateLiteralField3 = new InputManCell.DateLiteralField(" ");
InputManCell.DateHourField dateHourField1 = new InputManCell.DateHourField();
InputManCell.DateLiteralField dateLiteralField4 = new InputManCell.DateLiteralField(":");
InputManCell.DateMinuteField dateMinuteField1 = new InputManCell.DateMinuteField();
InputManCell.DateLiteralField dateLiteralField5 = new InputManCell.DateLiteralField(":");
InputManCell.DateSecondField dateSecondField1 = new InputManCell.DateSecondField();

// フィールドをコレクションに追加してセルに入力書式を設定します。
gcDateTimeCellType.Fields.AddRange(new InputManCell.DateField[] {
    dateYearField1, dateLiteralField1, dateMonthField1,
    dateLiteralField2, dateDayField1, dateLiteralField3,
    dateHourField1, dateLiteralField4,dateMinuteField1,
    dateLiteralField5, dateSecondField1});

// 表示フィールドのオブジェクトを作成します。
InputManCell.DateYearDisplayField dateYearDisplayDield1 = new InputManCell.DateYearDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField1 = new InputManCell.DateLiteralDisplayField("年");
InputManCell.DateMonthDisplayField dateMonthDisplayField1 = new InputManCell.DateMonthDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField2 = new InputManCell.DateLiteralDisplayField("月");
InputManCell.DateDayDisplayField dateDayDisplayField1 = new InputManCell.DateDayDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField3 = new InputManCell.DateLiteralDisplayField("日 ");
InputManCell.DateHourDisplayField dateHourDisplayField1 = new InputManCell.DateHourDisplayField(false, false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField4 = new InputManCell.DateLiteralDisplayField("時");
InputManCell.DateMinuteDisplayField dateMinuteDisplayField1 = new InputManCell.DateMinuteDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField5 = new InputManCell.DateLiteralDisplayField("分");
InputManCell.DateSecondDisplayField dateSecondDisplayField1 = new InputManCell.DateSecondDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField6 = new InputManCell.DateLiteralDisplayField("秒");

// フィールドをコレクションに追加してセルに表示書式を設定します。
gcDateTimeCellType.DisplayFields.AddRange(new InputManCell.DateDisplayField[] {
    dateYearDisplayDield1, dateLiteralDisplayField1, dateMonthDisplayField1,
    dateLiteralDisplayField2, dateDayDisplayField1, dateLiteralDisplayField3,
    dateHourDisplayField1, dateLiteralDisplayField4, dateMinuteDisplayField1,
    dateLiteralDisplayField5, dateSecondDisplayField1, dateLiteralDisplayField6});

gcCalendarGrid1.Content[today].Rows[1].Cells[0].CellType = gcDateTimeCellType;
// Valueプロパティにnullを設定します。
gcCalendarGrid1.Content[today].Rows[1].Cells[0].Value = null;

gcCalendarGrid1.ScrollIntoView(today);


   
(図) 上記サンプルコードを適用したCalendarGcDateTimeCellType

フィールドオブジェクトをDateFieldCollection または DateDisplayFieldCollection コレクションから削除するには、Removeメソッドまたは、RemoveAtメソッドを使用します。

次のサンプルコードは、DateDisplayFieldCollectionコレクションの先頭のフィールドを削除する例です。

' コレクションの先頭のオブジェクトを削除します。
Dim GcDateTimeCellType As GrapeCity.Win.CalendarGrid.InputMan.CalendarGcDateTimeCellType = DirectCast(GcCalendarGrid1.Content(Today).Rows(1).Cells(0).CellType, GrapeCity.Win.CalendarGrid.InputMan.CalendarGcDateTimeCellType)
GcDateTimeCellType.Fields.RemoveAt(0)
// コレクションの先頭のオブジェクトを削除します。
GrapeCity.Win.CalendarGrid.InputMan.CalendarGcDateTimeCellType gcDateTimeCellType = (GrapeCity.Win.CalendarGrid.InputMan.CalendarGcDateTimeCellType)gcCalendarGrid1.Content[DateTime.Today].Rows[1].Cells[0].CellType;
gcDateTimeCellType.Fields.RemoveAt(0);


入力フィールドオブジェクト

ここでは、CalendarGcDateTimeCellTypeの入力フィールドに設定可能な11種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。

すべてのフィールドクラスに共通な設定

これらのプロパティは、CalendarGcDateTimeCellTypeのすべての入力フィールドオブジェクトに共通な設定項目です。

プロパティ 説明

BackColor

フィールド背景色を設定します。

Font

フィールドに表示される文字列のフォントを設定します。

ForeColor

フィールド背景色を設定します。

Margin

フィールド領域の外枠の距離を設定します。
セルの境界線からの距離や、他のフィールドとの間隔を設定する際に使用します。

Padding

フィールド領域からテキストの表示エリアまでの距離を設定します。

リテラル文字フィールド (DateLiteralField)

リテラル文字を設定します。

プロパティ 説明

Text

リテラル文字として表示する文字列を設定します。

年号入力フィールド (DateEraField)

年号を入力するフィールドです。

プロパティ 説明

AutoDropDown

フィールドがカレットが移動されたときに自動的にドロップダウンリストを表示するかどうか指定します。

DropDownEnabled

フィールドに設定可能な値をドロップダウンリストで表示できるようにするかどうか設定します。

Pattern

年号を表す文字列を設定します。 (GrapeCity.Win.Editors.EraPattern型)
EraPattern.EraName のときは、年号を正式名称で表示、EraPattern.AbbreviatedEraName のときは、年号の頭文字を表示、EraPattern.Symbol のときは、年号を記号で表示します。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

和暦入力フィールド (DateEraYearField)

和暦年を入力するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

年入力フィールド (DateYearField)

西暦の年を入力するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

TwoDigitYearMax

西暦2桁入力時の有効期間(100年間)の最後の年を取得または設定します。

YearDigit

西暦の表示桁数を設定します。 (GrapeCity.Win.Editors.YearDigitType型
YearDigitType.FourDigitYear のときは、年を4桁で表示します。YearDigitType.TwoDigitYear のときは、年を2桁で表示します。

月入力フィールド (DateMonthField)

月を入力するフィールドです。

プロパティ 説明

AutoDropDown

フィールドがカレットが移動されたときに自動的にドロップダウンリストを表示するかどうか指定します。

DropDownEnabled

フィールドに設定可能な値をドロップダウンリストで表示できるようにするかどうか設定します。

Pattern

月を表す文字列を設定します。 (GrapeCity.Win.Editors.MonthPattern型)
MonthPattern.MonthName のときは、月を正式名称で表示します。(DateTimeFormatInfo.MonthNames()で指定された形式)
MonthPattern.AbbreviatedMonthName のときは、月を月を省略形で表示します。 (DateTimeFormatInfo.AbbreviatedMonthNames() で指定された形式)
MonthPattern.Number のときは、月を2桁の数字で表示(先頭に0を付ける)します。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

日入力フィールド (DateDayField)

日を入力するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

午前/午後入力フィールド (DateAmPmField)

時刻の午前/午後を入力するフィールドです。

プロパティ 説明

AMDesignator

午前を表す文字列を設定します。

Pattern

午前/午後を表す文字の表示方法を設定します。(GrapeCity.Win.Editors.AmPmPattern型)
AmPmDesignator.AmPmDesignator のときは、AMDesignatorまたはPMDesignatorで表される文字列、AmPmDesignator.AbbreviatedAmPmDesignatorで表わされる文字列の最初の1文字。

PMDesignator

午後を表す文字列を設定します。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

12時間制時刻入力フィールド (DateShortHourField)

12時間制の時刻を入力するフィールドです。

プロパティ 説明

Hour12Mode

12時間の範囲を定義する値を取得または設定します。(GrapeCity.Win.Editors.Hour12Mode型)
Hour12Mode.Hour12As0 のときは、表示範囲を 「00:00:00 〜 11:59:59」 にします。Hour12Mode.Hour0As12 表示範囲を 「01:00:00 〜 12:59:59」 にします。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

時入力フィールド (DateHourField)

時刻の時を入力するフィールドです。

プロパティ 説明

MidnightAs24

真夜中の表示方法を取得または設定します。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

分入力フィールド (DateMinuteField)

時刻の分を入力するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。

秒入力フィールド (DateSecondField)

時刻の秒を入力するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

SpinIncrement

スピン機能により日付を増減する値を設定します。


表示フィールドオブジェクト

ここでは、CalendarGcDateTimeCellTypeの表示フィールドに設定可能な14種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。

すべてのフィールドクラスに共通な設定

これらのプロパティは、CalendarGcDateTimeCellTypeのすべての表示フィールドオブジェクトに共通な設定項目です。

プロパティ 説明

BackColor

フィールド背景色を設定します。

Font

フィールドに表示される文字列のフォントを設定します。

ForeColor

フィールド背景色を設定します。

Margin

フィールド領域の外枠の距離を設定します。
セルの境界線からの距離や、他のフィールドとの間隔を設定する際に使用します。

Padding

フィールド領域からテキストの表示エリアまでの距離を設定します。

リテラル文字表示フィールド (DateLiteralDisplayField)

リテラル文字を設定します。

プロパティ 説明

Text

リテラル文字として表示する文字列を設定します。

年号表示フィールド (DateEraDisplayField)

年号を表示するフィールドです。

プロパティ 説明

Pattern

年号を表す文字列を設定します。 (GrapeCity.Win.Editors.EraPattern型)
EraPattern.EraName のときは、年号を正式名称で表示、EraPattern.AbbreviatedEraName のときは、年号の頭文字を表示、EraPattern.Symbol のときは、年号を記号で表示します。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

和暦表示フィールド (DateEraYearDisplayField)

和暦年を表示するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

ShowLeadingZero

値が1桁のとき先頭に0をつけるかどうか設定します。

ShowTraditionalFirstYear

開始年を元と表示するかどうか設定します。

西暦表示フィールド (DateADDisplayField)

紀元後を表すA.D.を表示するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

年表示フィールド (DateYearDisplayField)

西暦の年を表示するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

ShowLeadingZero 値が1桁のとき先頭に0をつけるかどうか設定します。
YearDigit 西暦の表示桁数を設定します。 (GrapeCity.Win.Editors.YearDigitType型
YearDigitType.FourDigitYear のときは、年を4桁で表示します。YearDigitType.TwoDigitYear のときは、年を2桁で表示します。

月表示フィールド (DateMonthDisplayField)

月を表示するフィールドです。

プロパティ 説明

Pattern

月を表す文字列を設定します。 (GrapeCity.Win.Editors.MonthPattern型)
MonthPattern.MonthName のときは、月を正式名称で表示します。(DateTimeFormatInfo.MonthNames()で指定された形式)
MonthPattern.AbbreviatedMonthName のときは、月を月を省略形で表示します。 (DateTimeFormatInfo.AbbreviatedMonthNames() で指定された形式)
MonthPattern.Number のときは、月を2桁の数字で表示(先頭に0を付ける)します。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

ShowLeadingZero

値が1桁のとき先頭に0をつけるかどうか設定します。

日表示フィールド (DateDayDisplayField)

日を表示するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

ShowLeadingZero

値が1桁のとき先頭に0をつけるかどうか設定します。

曜日表示フィールド (DateWeekdayDisplayField)

曜日を表示するフィールドです。

プロパティ 説明

Pattern

曜日を表す文字列を設定します。 (GrapeCity.Win.Editors.WeekdayPattern型)
MonthPattern.MonthName のときは、曜日を正式名称で表示します。 (DateTimeFormatInfo.DayNames()で指定された形式)
MonthPattern.AbbreviatedMonthName のときは、曜日を省略形で表示します。 (DateTimeFormatInfo.AbbreviatedDayNames()で指定された形式)

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

午前/午後表示フィールド (DateAmPmDisplayField)

時刻の午前/午後を表示するフィールドです。

プロパティ 説明

AMDesignator

午前を表す文字列を設定します。

Pattern

午前/午後を表す文字の表示方法を設定します。(GrapeCity.Win.Editors.AmPmPattern型)
AmPmDesignator.AmPmDesignator のときは、AMDesignatorまたはPMDesignatorで表される文字列、AmPmDesignator.AbbreviatedAmPmDesignatorで表わされる文字列の最初の1文字。

PMDesignator

午後を表す文字列を設定します。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

12時間制時刻表示フィールド (DateShortHourDisplayField)

12時間制の時刻を表示するフィールドです。

プロパティ 説明

Hour12Mode

12時間の範囲を定義する値を取得または設定します。(GrapeCity.Win.Editors.Hour12Mode型)
Hour12Mode.Hour12As0 のときは、表示範囲を 「00:00:00 〜 11:59:59」 にします。Hour12Mode.Hour0As12 表示範囲を 「01:00:00 〜 12:59:59」 にします。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

ShowLeadingZero

値が1桁のとき先頭に0をつけるかどうか設定します。

時表示フィールド (DateHourDisplayField)

時刻の時を表示するフィールドです。

プロパティ 説明

MidnightAs24

真夜中の表示方法を取得または設定します。

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

ShowLeadingZero

値が1桁のとき先頭に0をつけるかどうか設定します。

分表示フィールド (DateMinuteDisplayField)

時刻の分を表示するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

ShowLeadingZero

値が1桁のとき先頭に0をつけるかどうか設定します。

秒表示フィールド (DateSecondDisplayField)

時刻の秒を表示するフィールドです。

プロパティ 説明

PromptChar

値が入力されていないときに表示するプロンプト文字を設定します。

ShowLeadingZero

値が1桁のとき先頭に0をつけるかどうか設定します。

システム書式表示フィールド (DateSystemFormatDisplayField)

システムで定義された書式指定子を使用して日付または時刻の書式を設定します。

プロパティ 説明

Pattern

書式を表す書式指定子を設定します。 (String型)
下表の書式指定子を設定することができます。

PromptChar


値が入力されていないときに表示するプロンプト文字を設定します。



Patternプロパティに設定可能な書式指定子
書式指定子 説明

d

短い形式の日付
(例:2012/04/01)

D

長い形式の日付
(例:2012年4月1日)

t

短い形式の時刻
(例:1:30)

T

長い形式の時刻
(例:1:30:00)

f

長い形式の日付と短い形式の時刻
(例:2012年4月1日 1:30)

F

長い形式の日付と長い形式の時刻
(例:2012年4月1日 1:30:00)

g

短い形式の日付と短い形式の時刻
(例:2012/04/01 1:30)

G

短い形式の日付と長い形式の時刻
(例:2012/04/01 1:30:00)

Mまたはm

月日の表示
(例:4月1日)

Oまたはo

ラウンドトリップ形式
(例:2012-04-01T01:30:00.0000000)

Rまたはr

RFC1123の形式
(例:Sun, 01 Apr 2012 01:30:00 GMT)

s

ISO 8601準拠の形式
(例:2012-04-01T01:30:00)

u

ユニバーサル形式
(例:2012-04-01 01:30:00Z)

U

世界協定時刻
(例:2012年3月31日 16:30:00)

Yまたはy

年月の表示
(例:2012年4月)


関連トピック

 

 


© MESCIUS inc. All rights reserved.